package com.crm.model.entity.finishOrderProduct;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class FinishOrderProductExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public FinishOrderProductExample() {
        oredCriteria = new ArrayList<>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andFinishOrderProductIdIsNull() {
            addCriterion("finish_order_product_id is null");
            return (Criteria) this;
        }

        public Criteria andFinishOrderProductIdIsNotNull() {
            addCriterion("finish_order_product_id is not null");
            return (Criteria) this;
        }

        public Criteria andFinishOrderProductIdEqualTo(String value) {
            addCriterion("finish_order_product_id =", value, "finishOrderProductId");
            return (Criteria) this;
        }

        public Criteria andFinishOrderProductIdNotEqualTo(String value) {
            addCriterion("finish_order_product_id <>", value, "finishOrderProductId");
            return (Criteria) this;
        }

        public Criteria andFinishOrderProductIdGreaterThan(String value) {
            addCriterion("finish_order_product_id >", value, "finishOrderProductId");
            return (Criteria) this;
        }

        public Criteria andFinishOrderProductIdGreaterThanOrEqualTo(String value) {
            addCriterion("finish_order_product_id >=", value, "finishOrderProductId");
            return (Criteria) this;
        }

        public Criteria andFinishOrderProductIdLessThan(String value) {
            addCriterion("finish_order_product_id <", value, "finishOrderProductId");
            return (Criteria) this;
        }

        public Criteria andFinishOrderProductIdLessThanOrEqualTo(String value) {
            addCriterion("finish_order_product_id <=", value, "finishOrderProductId");
            return (Criteria) this;
        }

        public Criteria andFinishOrderProductIdLike(String value) {
            addCriterion("finish_order_product_id like", value, "finishOrderProductId");
            return (Criteria) this;
        }

        public Criteria andFinishOrderProductIdNotLike(String value) {
            addCriterion("finish_order_product_id not like", value, "finishOrderProductId");
            return (Criteria) this;
        }

        public Criteria andFinishOrderProductIdIn(List<String> values) {
            addCriterion("finish_order_product_id in", values, "finishOrderProductId");
            return (Criteria) this;
        }

        public Criteria andFinishOrderProductIdNotIn(List<String> values) {
            addCriterion("finish_order_product_id not in", values, "finishOrderProductId");
            return (Criteria) this;
        }

        public Criteria andFinishOrderProductIdBetween(String value1, String value2) {
            addCriterion("finish_order_product_id between", value1, value2, "finishOrderProductId");
            return (Criteria) this;
        }

        public Criteria andFinishOrderProductIdNotBetween(String value1, String value2) {
            addCriterion("finish_order_product_id not between", value1, value2, "finishOrderProductId");
            return (Criteria) this;
        }

        public Criteria andFinishOrderProductNumIsNull() {
            addCriterion("finish_order_product_num is null");
            return (Criteria) this;
        }

        public Criteria andFinishOrderProductNumIsNotNull() {
            addCriterion("finish_order_product_num is not null");
            return (Criteria) this;
        }

        public Criteria andFinishOrderProductNumEqualTo(String value) {
            addCriterion("finish_order_product_num =", value, "finishOrderProductNum");
            return (Criteria) this;
        }

        public Criteria andFinishOrderProductNumNotEqualTo(String value) {
            addCriterion("finish_order_product_num <>", value, "finishOrderProductNum");
            return (Criteria) this;
        }

        public Criteria andFinishOrderProductNumGreaterThan(String value) {
            addCriterion("finish_order_product_num >", value, "finishOrderProductNum");
            return (Criteria) this;
        }

        public Criteria andFinishOrderProductNumGreaterThanOrEqualTo(String value) {
            addCriterion("finish_order_product_num >=", value, "finishOrderProductNum");
            return (Criteria) this;
        }

        public Criteria andFinishOrderProductNumLessThan(String value) {
            addCriterion("finish_order_product_num <", value, "finishOrderProductNum");
            return (Criteria) this;
        }

        public Criteria andFinishOrderProductNumLessThanOrEqualTo(String value) {
            addCriterion("finish_order_product_num <=", value, "finishOrderProductNum");
            return (Criteria) this;
        }

        public Criteria andFinishOrderProductNumLike(String value) {
            addCriterion("finish_order_product_num like", value, "finishOrderProductNum");
            return (Criteria) this;
        }

        public Criteria andFinishOrderProductNumNotLike(String value) {
            addCriterion("finish_order_product_num not like", value, "finishOrderProductNum");
            return (Criteria) this;
        }

        public Criteria andFinishOrderProductNumIn(List<String> values) {
            addCriterion("finish_order_product_num in", values, "finishOrderProductNum");
            return (Criteria) this;
        }

        public Criteria andFinishOrderProductNumNotIn(List<String> values) {
            addCriterion("finish_order_product_num not in", values, "finishOrderProductNum");
            return (Criteria) this;
        }

        public Criteria andFinishOrderProductNumBetween(String value1, String value2) {
            addCriterion("finish_order_product_num between", value1, value2, "finishOrderProductNum");
            return (Criteria) this;
        }

        public Criteria andFinishOrderProductNumNotBetween(String value1, String value2) {
            addCriterion("finish_order_product_num not between", value1, value2, "finishOrderProductNum");
            return (Criteria) this;
        }

        public Criteria andProductIdIsNull() {
            addCriterion("product_id is null");
            return (Criteria) this;
        }

        public Criteria andProductIdIsNotNull() {
            addCriterion("product_id is not null");
            return (Criteria) this;
        }

        public Criteria andProductIdEqualTo(String value) {
            addCriterion("product_id =", value, "productId");
            return (Criteria) this;
        }

        public Criteria andProductIdNotEqualTo(String value) {
            addCriterion("product_id <>", value, "productId");
            return (Criteria) this;
        }

        public Criteria andProductIdGreaterThan(String value) {
            addCriterion("product_id >", value, "productId");
            return (Criteria) this;
        }

        public Criteria andProductIdGreaterThanOrEqualTo(String value) {
            addCriterion("product_id >=", value, "productId");
            return (Criteria) this;
        }

        public Criteria andProductIdLessThan(String value) {
            addCriterion("product_id <", value, "productId");
            return (Criteria) this;
        }

        public Criteria andProductIdLessThanOrEqualTo(String value) {
            addCriterion("product_id <=", value, "productId");
            return (Criteria) this;
        }

        public Criteria andProductIdLike(String value) {
            addCriterion("product_id like", value, "productId");
            return (Criteria) this;
        }

        public Criteria andProductIdNotLike(String value) {
            addCriterion("product_id not like", value, "productId");
            return (Criteria) this;
        }

        public Criteria andProductIdIn(List<String> values) {
            addCriterion("product_id in", values, "productId");
            return (Criteria) this;
        }

        public Criteria andProductIdNotIn(List<String> values) {
            addCriterion("product_id not in", values, "productId");
            return (Criteria) this;
        }

        public Criteria andProductIdBetween(String value1, String value2) {
            addCriterion("product_id between", value1, value2, "productId");
            return (Criteria) this;
        }

        public Criteria andProductIdNotBetween(String value1, String value2) {
            addCriterion("product_id not between", value1, value2, "productId");
            return (Criteria) this;
        }

        public Criteria andProductNameIsNull() {
            addCriterion("product_name is null");
            return (Criteria) this;
        }

        public Criteria andProductNameIsNotNull() {
            addCriterion("product_name is not null");
            return (Criteria) this;
        }

        public Criteria andProductNameEqualTo(String value) {
            addCriterion("product_name =", value, "productName");
            return (Criteria) this;
        }

        public Criteria andProductNameNotEqualTo(String value) {
            addCriterion("product_name <>", value, "productName");
            return (Criteria) this;
        }

        public Criteria andProductNameGreaterThan(String value) {
            addCriterion("product_name >", value, "productName");
            return (Criteria) this;
        }

        public Criteria andProductNameGreaterThanOrEqualTo(String value) {
            addCriterion("product_name >=", value, "productName");
            return (Criteria) this;
        }

        public Criteria andProductNameLessThan(String value) {
            addCriterion("product_name <", value, "productName");
            return (Criteria) this;
        }

        public Criteria andProductNameLessThanOrEqualTo(String value) {
            addCriterion("product_name <=", value, "productName");
            return (Criteria) this;
        }

        public Criteria andProductNameLike(String value) {
            addCriterion("product_name like", value, "productName");
            return (Criteria) this;
        }

        public Criteria andProductNameNotLike(String value) {
            addCriterion("product_name not like", value, "productName");
            return (Criteria) this;
        }

        public Criteria andProductNameIn(List<String> values) {
            addCriterion("product_name in", values, "productName");
            return (Criteria) this;
        }

        public Criteria andProductNameNotIn(List<String> values) {
            addCriterion("product_name not in", values, "productName");
            return (Criteria) this;
        }

        public Criteria andProductNameBetween(String value1, String value2) {
            addCriterion("product_name between", value1, value2, "productName");
            return (Criteria) this;
        }

        public Criteria andProductNameNotBetween(String value1, String value2) {
            addCriterion("product_name not between", value1, value2, "productName");
            return (Criteria) this;
        }

        public Criteria andProductCodeIsNull() {
            addCriterion("product_code is null");
            return (Criteria) this;
        }

        public Criteria andProductCodeIsNotNull() {
            addCriterion("product_code is not null");
            return (Criteria) this;
        }

        public Criteria andProductCodeEqualTo(String value) {
            addCriterion("product_code =", value, "productCode");
            return (Criteria) this;
        }

        public Criteria andProductCodeNotEqualTo(String value) {
            addCriterion("product_code <>", value, "productCode");
            return (Criteria) this;
        }

        public Criteria andProductCodeGreaterThan(String value) {
            addCriterion("product_code >", value, "productCode");
            return (Criteria) this;
        }

        public Criteria andProductCodeGreaterThanOrEqualTo(String value) {
            addCriterion("product_code >=", value, "productCode");
            return (Criteria) this;
        }

        public Criteria andProductCodeLessThan(String value) {
            addCriterion("product_code <", value, "productCode");
            return (Criteria) this;
        }

        public Criteria andProductCodeLessThanOrEqualTo(String value) {
            addCriterion("product_code <=", value, "productCode");
            return (Criteria) this;
        }

        public Criteria andProductCodeLike(String value) {
            addCriterion("product_code like", value, "productCode");
            return (Criteria) this;
        }

        public Criteria andProductCodeNotLike(String value) {
            addCriterion("product_code not like", value, "productCode");
            return (Criteria) this;
        }

        public Criteria andProductCodeIn(List<String> values) {
            addCriterion("product_code in", values, "productCode");
            return (Criteria) this;
        }

        public Criteria andProductCodeNotIn(List<String> values) {
            addCriterion("product_code not in", values, "productCode");
            return (Criteria) this;
        }

        public Criteria andProductCodeBetween(String value1, String value2) {
            addCriterion("product_code between", value1, value2, "productCode");
            return (Criteria) this;
        }

        public Criteria andProductCodeNotBetween(String value1, String value2) {
            addCriterion("product_code not between", value1, value2, "productCode");
            return (Criteria) this;
        }

        public Criteria andOrderDetailTypeIsNull() {
            addCriterion("order_detail_type is null");
            return (Criteria) this;
        }

        public Criteria andOrderDetailTypeIsNotNull() {
            addCriterion("order_detail_type is not null");
            return (Criteria) this;
        }

        public Criteria andOrderDetailTypeEqualTo(String value) {
            addCriterion("order_detail_type =", value, "orderDetailType");
            return (Criteria) this;
        }

        public Criteria andOrderDetailTypeNotEqualTo(String value) {
            addCriterion("order_detail_type <>", value, "orderDetailType");
            return (Criteria) this;
        }

        public Criteria andOrderDetailTypeGreaterThan(String value) {
            addCriterion("order_detail_type >", value, "orderDetailType");
            return (Criteria) this;
        }

        public Criteria andOrderDetailTypeGreaterThanOrEqualTo(String value) {
            addCriterion("order_detail_type >=", value, "orderDetailType");
            return (Criteria) this;
        }

        public Criteria andOrderDetailTypeLessThan(String value) {
            addCriterion("order_detail_type <", value, "orderDetailType");
            return (Criteria) this;
        }

        public Criteria andOrderDetailTypeLessThanOrEqualTo(String value) {
            addCriterion("order_detail_type <=", value, "orderDetailType");
            return (Criteria) this;
        }

        public Criteria andOrderDetailTypeLike(String value) {
            addCriterion("order_detail_type like", value, "orderDetailType");
            return (Criteria) this;
        }

        public Criteria andOrderDetailTypeNotLike(String value) {
            addCriterion("order_detail_type not like", value, "orderDetailType");
            return (Criteria) this;
        }

        public Criteria andOrderDetailTypeIn(List<String> values) {
            addCriterion("order_detail_type in", values, "orderDetailType");
            return (Criteria) this;
        }

        public Criteria andOrderDetailTypeNotIn(List<String> values) {
            addCriterion("order_detail_type not in", values, "orderDetailType");
            return (Criteria) this;
        }

        public Criteria andOrderDetailTypeBetween(String value1, String value2) {
            addCriterion("order_detail_type between", value1, value2, "orderDetailType");
            return (Criteria) this;
        }

        public Criteria andOrderDetailTypeNotBetween(String value1, String value2) {
            addCriterion("order_detail_type not between", value1, value2, "orderDetailType");
            return (Criteria) this;
        }

        public Criteria andProductOriginalPriceIsNull() {
            addCriterion("product_original_price is null");
            return (Criteria) this;
        }

        public Criteria andProductOriginalPriceIsNotNull() {
            addCriterion("product_original_price is not null");
            return (Criteria) this;
        }

        public Criteria andProductOriginalPriceEqualTo(BigDecimal value) {
            addCriterion("product_original_price =", value, "productOriginalPrice");
            return (Criteria) this;
        }

        public Criteria andProductOriginalPriceNotEqualTo(BigDecimal value) {
            addCriterion("product_original_price <>", value, "productOriginalPrice");
            return (Criteria) this;
        }

        public Criteria andProductOriginalPriceGreaterThan(BigDecimal value) {
            addCriterion("product_original_price >", value, "productOriginalPrice");
            return (Criteria) this;
        }

        public Criteria andProductOriginalPriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("product_original_price >=", value, "productOriginalPrice");
            return (Criteria) this;
        }

        public Criteria andProductOriginalPriceLessThan(BigDecimal value) {
            addCriterion("product_original_price <", value, "productOriginalPrice");
            return (Criteria) this;
        }

        public Criteria andProductOriginalPriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("product_original_price <=", value, "productOriginalPrice");
            return (Criteria) this;
        }

        public Criteria andProductOriginalPriceIn(List<BigDecimal> values) {
            addCriterion("product_original_price in", values, "productOriginalPrice");
            return (Criteria) this;
        }

        public Criteria andProductOriginalPriceNotIn(List<BigDecimal> values) {
            addCriterion("product_original_price not in", values, "productOriginalPrice");
            return (Criteria) this;
        }

        public Criteria andProductOriginalPriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("product_original_price between", value1, value2, "productOriginalPrice");
            return (Criteria) this;
        }

        public Criteria andProductOriginalPriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("product_original_price not between", value1, value2, "productOriginalPrice");
            return (Criteria) this;
        }

        public Criteria andProductUnitPriceIsNull() {
            addCriterion("product_unit_price is null");
            return (Criteria) this;
        }

        public Criteria andProductUnitPriceIsNotNull() {
            addCriterion("product_unit_price is not null");
            return (Criteria) this;
        }

        public Criteria andProductUnitPriceEqualTo(BigDecimal value) {
            addCriterion("product_unit_price =", value, "productUnitPrice");
            return (Criteria) this;
        }

        public Criteria andProductUnitPriceNotEqualTo(BigDecimal value) {
            addCriterion("product_unit_price <>", value, "productUnitPrice");
            return (Criteria) this;
        }

        public Criteria andProductUnitPriceGreaterThan(BigDecimal value) {
            addCriterion("product_unit_price >", value, "productUnitPrice");
            return (Criteria) this;
        }

        public Criteria andProductUnitPriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("product_unit_price >=", value, "productUnitPrice");
            return (Criteria) this;
        }

        public Criteria andProductUnitPriceLessThan(BigDecimal value) {
            addCriterion("product_unit_price <", value, "productUnitPrice");
            return (Criteria) this;
        }

        public Criteria andProductUnitPriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("product_unit_price <=", value, "productUnitPrice");
            return (Criteria) this;
        }

        public Criteria andProductUnitPriceIn(List<BigDecimal> values) {
            addCriterion("product_unit_price in", values, "productUnitPrice");
            return (Criteria) this;
        }

        public Criteria andProductUnitPriceNotIn(List<BigDecimal> values) {
            addCriterion("product_unit_price not in", values, "productUnitPrice");
            return (Criteria) this;
        }

        public Criteria andProductUnitPriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("product_unit_price between", value1, value2, "productUnitPrice");
            return (Criteria) this;
        }

        public Criteria andProductUnitPriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("product_unit_price not between", value1, value2, "productUnitPrice");
            return (Criteria) this;
        }

        public Criteria andProductPreferentialPriceIsNull() {
            addCriterion("product_preferential_price is null");
            return (Criteria) this;
        }

        public Criteria andProductPreferentialPriceIsNotNull() {
            addCriterion("product_preferential_price is not null");
            return (Criteria) this;
        }

        public Criteria andProductPreferentialPriceEqualTo(BigDecimal value) {
            addCriterion("product_preferential_price =", value, "productPreferentialPrice");
            return (Criteria) this;
        }

        public Criteria andProductPreferentialPriceNotEqualTo(BigDecimal value) {
            addCriterion("product_preferential_price <>", value, "productPreferentialPrice");
            return (Criteria) this;
        }

        public Criteria andProductPreferentialPriceGreaterThan(BigDecimal value) {
            addCriterion("product_preferential_price >", value, "productPreferentialPrice");
            return (Criteria) this;
        }

        public Criteria andProductPreferentialPriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("product_preferential_price >=", value, "productPreferentialPrice");
            return (Criteria) this;
        }

        public Criteria andProductPreferentialPriceLessThan(BigDecimal value) {
            addCriterion("product_preferential_price <", value, "productPreferentialPrice");
            return (Criteria) this;
        }

        public Criteria andProductPreferentialPriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("product_preferential_price <=", value, "productPreferentialPrice");
            return (Criteria) this;
        }

        public Criteria andProductPreferentialPriceIn(List<BigDecimal> values) {
            addCriterion("product_preferential_price in", values, "productPreferentialPrice");
            return (Criteria) this;
        }

        public Criteria andProductPreferentialPriceNotIn(List<BigDecimal> values) {
            addCriterion("product_preferential_price not in", values, "productPreferentialPrice");
            return (Criteria) this;
        }

        public Criteria andProductPreferentialPriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("product_preferential_price between", value1, value2, "productPreferentialPrice");
            return (Criteria) this;
        }

        public Criteria andProductPreferentialPriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("product_preferential_price not between", value1, value2, "productPreferentialPrice");
            return (Criteria) this;
        }

        public Criteria andProductMemberPriceIsNull() {
            addCriterion("product_member_price is null");
            return (Criteria) this;
        }

        public Criteria andProductMemberPriceIsNotNull() {
            addCriterion("product_member_price is not null");
            return (Criteria) this;
        }

        public Criteria andProductMemberPriceEqualTo(BigDecimal value) {
            addCriterion("product_member_price =", value, "productMemberPrice");
            return (Criteria) this;
        }

        public Criteria andProductMemberPriceNotEqualTo(BigDecimal value) {
            addCriterion("product_member_price <>", value, "productMemberPrice");
            return (Criteria) this;
        }

        public Criteria andProductMemberPriceGreaterThan(BigDecimal value) {
            addCriterion("product_member_price >", value, "productMemberPrice");
            return (Criteria) this;
        }

        public Criteria andProductMemberPriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("product_member_price >=", value, "productMemberPrice");
            return (Criteria) this;
        }

        public Criteria andProductMemberPriceLessThan(BigDecimal value) {
            addCriterion("product_member_price <", value, "productMemberPrice");
            return (Criteria) this;
        }

        public Criteria andProductMemberPriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("product_member_price <=", value, "productMemberPrice");
            return (Criteria) this;
        }

        public Criteria andProductMemberPriceIn(List<BigDecimal> values) {
            addCriterion("product_member_price in", values, "productMemberPrice");
            return (Criteria) this;
        }

        public Criteria andProductMemberPriceNotIn(List<BigDecimal> values) {
            addCriterion("product_member_price not in", values, "productMemberPrice");
            return (Criteria) this;
        }

        public Criteria andProductMemberPriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("product_member_price between", value1, value2, "productMemberPrice");
            return (Criteria) this;
        }

        public Criteria andProductMemberPriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("product_member_price not between", value1, value2, "productMemberPrice");
            return (Criteria) this;
        }

        public Criteria andProductFinalPriceIsNull() {
            addCriterion("product_final_price is null");
            return (Criteria) this;
        }

        public Criteria andProductFinalPriceIsNotNull() {
            addCriterion("product_final_price is not null");
            return (Criteria) this;
        }

        public Criteria andProductFinalPriceEqualTo(BigDecimal value) {
            addCriterion("product_final_price =", value, "productFinalPrice");
            return (Criteria) this;
        }

        public Criteria andProductFinalPriceNotEqualTo(BigDecimal value) {
            addCriterion("product_final_price <>", value, "productFinalPrice");
            return (Criteria) this;
        }

        public Criteria andProductFinalPriceGreaterThan(BigDecimal value) {
            addCriterion("product_final_price >", value, "productFinalPrice");
            return (Criteria) this;
        }

        public Criteria andProductFinalPriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("product_final_price >=", value, "productFinalPrice");
            return (Criteria) this;
        }

        public Criteria andProductFinalPriceLessThan(BigDecimal value) {
            addCriterion("product_final_price <", value, "productFinalPrice");
            return (Criteria) this;
        }

        public Criteria andProductFinalPriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("product_final_price <=", value, "productFinalPrice");
            return (Criteria) this;
        }

        public Criteria andProductFinalPriceIn(List<BigDecimal> values) {
            addCriterion("product_final_price in", values, "productFinalPrice");
            return (Criteria) this;
        }

        public Criteria andProductFinalPriceNotIn(List<BigDecimal> values) {
            addCriterion("product_final_price not in", values, "productFinalPrice");
            return (Criteria) this;
        }

        public Criteria andProductFinalPriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("product_final_price between", value1, value2, "productFinalPrice");
            return (Criteria) this;
        }

        public Criteria andProductFinalPriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("product_final_price not between", value1, value2, "productFinalPrice");
            return (Criteria) this;
        }

        public Criteria andProductPartFinalPriceIsNull() {
            addCriterion("product_part_final_price is null");
            return (Criteria) this;
        }

        public Criteria andProductPartFinalPriceIsNotNull() {
            addCriterion("product_part_final_price is not null");
            return (Criteria) this;
        }

        public Criteria andProductPartFinalPriceEqualTo(BigDecimal value) {
            addCriterion("product_part_final_price =", value, "productPartFinalPrice");
            return (Criteria) this;
        }

        public Criteria andProductPartFinalPriceNotEqualTo(BigDecimal value) {
            addCriterion("product_part_final_price <>", value, "productPartFinalPrice");
            return (Criteria) this;
        }

        public Criteria andProductPartFinalPriceGreaterThan(BigDecimal value) {
            addCriterion("product_part_final_price >", value, "productPartFinalPrice");
            return (Criteria) this;
        }

        public Criteria andProductPartFinalPriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("product_part_final_price >=", value, "productPartFinalPrice");
            return (Criteria) this;
        }

        public Criteria andProductPartFinalPriceLessThan(BigDecimal value) {
            addCriterion("product_part_final_price <", value, "productPartFinalPrice");
            return (Criteria) this;
        }

        public Criteria andProductPartFinalPriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("product_part_final_price <=", value, "productPartFinalPrice");
            return (Criteria) this;
        }

        public Criteria andProductPartFinalPriceIn(List<BigDecimal> values) {
            addCriterion("product_part_final_price in", values, "productPartFinalPrice");
            return (Criteria) this;
        }

        public Criteria andProductPartFinalPriceNotIn(List<BigDecimal> values) {
            addCriterion("product_part_final_price not in", values, "productPartFinalPrice");
            return (Criteria) this;
        }

        public Criteria andProductPartFinalPriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("product_part_final_price between", value1, value2, "productPartFinalPrice");
            return (Criteria) this;
        }

        public Criteria andProductPartFinalPriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("product_part_final_price not between", value1, value2, "productPartFinalPrice");
            return (Criteria) this;
        }

        public Criteria andProductQuantityIsNull() {
            addCriterion("product_quantity is null");
            return (Criteria) this;
        }

        public Criteria andProductQuantityIsNotNull() {
            addCriterion("product_quantity is not null");
            return (Criteria) this;
        }

        public Criteria andProductQuantityEqualTo(Integer value) {
            addCriterion("product_quantity =", value, "productQuantity");
            return (Criteria) this;
        }

        public Criteria andProductQuantityNotEqualTo(Integer value) {
            addCriterion("product_quantity <>", value, "productQuantity");
            return (Criteria) this;
        }

        public Criteria andProductQuantityGreaterThan(Integer value) {
            addCriterion("product_quantity >", value, "productQuantity");
            return (Criteria) this;
        }

        public Criteria andProductQuantityGreaterThanOrEqualTo(Integer value) {
            addCriterion("product_quantity >=", value, "productQuantity");
            return (Criteria) this;
        }

        public Criteria andProductQuantityLessThan(Integer value) {
            addCriterion("product_quantity <", value, "productQuantity");
            return (Criteria) this;
        }

        public Criteria andProductQuantityLessThanOrEqualTo(Integer value) {
            addCriterion("product_quantity <=", value, "productQuantity");
            return (Criteria) this;
        }

        public Criteria andProductQuantityIn(List<Integer> values) {
            addCriterion("product_quantity in", values, "productQuantity");
            return (Criteria) this;
        }

        public Criteria andProductQuantityNotIn(List<Integer> values) {
            addCriterion("product_quantity not in", values, "productQuantity");
            return (Criteria) this;
        }

        public Criteria andProductQuantityBetween(Integer value1, Integer value2) {
            addCriterion("product_quantity between", value1, value2, "productQuantity");
            return (Criteria) this;
        }

        public Criteria andProductQuantityNotBetween(Integer value1, Integer value2) {
            addCriterion("product_quantity not between", value1, value2, "productQuantity");
            return (Criteria) this;
        }

        public Criteria andProductCategoriesIsNull() {
            addCriterion("product_categories is null");
            return (Criteria) this;
        }

        public Criteria andProductCategoriesIsNotNull() {
            addCriterion("product_categories is not null");
            return (Criteria) this;
        }

        public Criteria andProductCategoriesEqualTo(String value) {
            addCriterion("product_categories =", value, "productCategories");
            return (Criteria) this;
        }

        public Criteria andProductCategoriesNotEqualTo(String value) {
            addCriterion("product_categories <>", value, "productCategories");
            return (Criteria) this;
        }

        public Criteria andProductCategoriesGreaterThan(String value) {
            addCriterion("product_categories >", value, "productCategories");
            return (Criteria) this;
        }

        public Criteria andProductCategoriesGreaterThanOrEqualTo(String value) {
            addCriterion("product_categories >=", value, "productCategories");
            return (Criteria) this;
        }

        public Criteria andProductCategoriesLessThan(String value) {
            addCriterion("product_categories <", value, "productCategories");
            return (Criteria) this;
        }

        public Criteria andProductCategoriesLessThanOrEqualTo(String value) {
            addCriterion("product_categories <=", value, "productCategories");
            return (Criteria) this;
        }

        public Criteria andProductCategoriesLike(String value) {
            addCriterion("product_categories like", value, "productCategories");
            return (Criteria) this;
        }

        public Criteria andProductCategoriesNotLike(String value) {
            addCriterion("product_categories not like", value, "productCategories");
            return (Criteria) this;
        }

        public Criteria andProductCategoriesIn(List<String> values) {
            addCriterion("product_categories in", values, "productCategories");
            return (Criteria) this;
        }

        public Criteria andProductCategoriesNotIn(List<String> values) {
            addCriterion("product_categories not in", values, "productCategories");
            return (Criteria) this;
        }

        public Criteria andProductCategoriesBetween(String value1, String value2) {
            addCriterion("product_categories between", value1, value2, "productCategories");
            return (Criteria) this;
        }

        public Criteria andProductCategoriesNotBetween(String value1, String value2) {
            addCriterion("product_categories not between", value1, value2, "productCategories");
            return (Criteria) this;
        }

        public Criteria andOrderRelationIdIsNull() {
            addCriterion("order_relation_id is null");
            return (Criteria) this;
        }

        public Criteria andOrderRelationIdIsNotNull() {
            addCriterion("order_relation_id is not null");
            return (Criteria) this;
        }

        public Criteria andOrderRelationIdEqualTo(String value) {
            addCriterion("order_relation_id =", value, "orderRelationId");
            return (Criteria) this;
        }

        public Criteria andOrderRelationIdNotEqualTo(String value) {
            addCriterion("order_relation_id <>", value, "orderRelationId");
            return (Criteria) this;
        }

        public Criteria andOrderRelationIdGreaterThan(String value) {
            addCriterion("order_relation_id >", value, "orderRelationId");
            return (Criteria) this;
        }

        public Criteria andOrderRelationIdGreaterThanOrEqualTo(String value) {
            addCriterion("order_relation_id >=", value, "orderRelationId");
            return (Criteria) this;
        }

        public Criteria andOrderRelationIdLessThan(String value) {
            addCriterion("order_relation_id <", value, "orderRelationId");
            return (Criteria) this;
        }

        public Criteria andOrderRelationIdLessThanOrEqualTo(String value) {
            addCriterion("order_relation_id <=", value, "orderRelationId");
            return (Criteria) this;
        }

        public Criteria andOrderRelationIdLike(String value) {
            addCriterion("order_relation_id like", value, "orderRelationId");
            return (Criteria) this;
        }

        public Criteria andOrderRelationIdNotLike(String value) {
            addCriterion("order_relation_id not like", value, "orderRelationId");
            return (Criteria) this;
        }

        public Criteria andOrderRelationIdIn(List<String> values) {
            addCriterion("order_relation_id in", values, "orderRelationId");
            return (Criteria) this;
        }

        public Criteria andOrderRelationIdNotIn(List<String> values) {
            addCriterion("order_relation_id not in", values, "orderRelationId");
            return (Criteria) this;
        }

        public Criteria andOrderRelationIdBetween(String value1, String value2) {
            addCriterion("order_relation_id between", value1, value2, "orderRelationId");
            return (Criteria) this;
        }

        public Criteria andOrderRelationIdNotBetween(String value1, String value2) {
            addCriterion("order_relation_id not between", value1, value2, "orderRelationId");
            return (Criteria) this;
        }

        public Criteria andProductOrderIdIsNull() {
            addCriterion("product_order_id is null");
            return (Criteria) this;
        }

        public Criteria andProductOrderIdIsNotNull() {
            addCriterion("product_order_id is not null");
            return (Criteria) this;
        }

        public Criteria andProductOrderIdEqualTo(String value) {
            addCriterion("product_order_id =", value, "productOrderId");
            return (Criteria) this;
        }

        public Criteria andProductOrderIdNotEqualTo(String value) {
            addCriterion("product_order_id <>", value, "productOrderId");
            return (Criteria) this;
        }

        public Criteria andProductOrderIdGreaterThan(String value) {
            addCriterion("product_order_id >", value, "productOrderId");
            return (Criteria) this;
        }

        public Criteria andProductOrderIdGreaterThanOrEqualTo(String value) {
            addCriterion("product_order_id >=", value, "productOrderId");
            return (Criteria) this;
        }

        public Criteria andProductOrderIdLessThan(String value) {
            addCriterion("product_order_id <", value, "productOrderId");
            return (Criteria) this;
        }

        public Criteria andProductOrderIdLessThanOrEqualTo(String value) {
            addCriterion("product_order_id <=", value, "productOrderId");
            return (Criteria) this;
        }

        public Criteria andProductOrderIdLike(String value) {
            addCriterion("product_order_id like", value, "productOrderId");
            return (Criteria) this;
        }

        public Criteria andProductOrderIdNotLike(String value) {
            addCriterion("product_order_id not like", value, "productOrderId");
            return (Criteria) this;
        }

        public Criteria andProductOrderIdIn(List<String> values) {
            addCriterion("product_order_id in", values, "productOrderId");
            return (Criteria) this;
        }

        public Criteria andProductOrderIdNotIn(List<String> values) {
            addCriterion("product_order_id not in", values, "productOrderId");
            return (Criteria) this;
        }

        public Criteria andProductOrderIdBetween(String value1, String value2) {
            addCriterion("product_order_id between", value1, value2, "productOrderId");
            return (Criteria) this;
        }

        public Criteria andProductOrderIdNotBetween(String value1, String value2) {
            addCriterion("product_order_id not between", value1, value2, "productOrderId");
            return (Criteria) this;
        }

        public Criteria andOrderNumberIsNull() {
            addCriterion("order_number is null");
            return (Criteria) this;
        }

        public Criteria andOrderNumberIsNotNull() {
            addCriterion("order_number is not null");
            return (Criteria) this;
        }

        public Criteria andOrderNumberEqualTo(String value) {
            addCriterion("order_number =", value, "orderNumber");
            return (Criteria) this;
        }

        public Criteria andOrderNumberNotEqualTo(String value) {
            addCriterion("order_number <>", value, "orderNumber");
            return (Criteria) this;
        }

        public Criteria andOrderNumberGreaterThan(String value) {
            addCriterion("order_number >", value, "orderNumber");
            return (Criteria) this;
        }

        public Criteria andOrderNumberGreaterThanOrEqualTo(String value) {
            addCriterion("order_number >=", value, "orderNumber");
            return (Criteria) this;
        }

        public Criteria andOrderNumberLessThan(String value) {
            addCriterion("order_number <", value, "orderNumber");
            return (Criteria) this;
        }

        public Criteria andOrderNumberLessThanOrEqualTo(String value) {
            addCriterion("order_number <=", value, "orderNumber");
            return (Criteria) this;
        }

        public Criteria andOrderNumberLike(String value) {
            addCriterion("order_number like", value, "orderNumber");
            return (Criteria) this;
        }

        public Criteria andOrderNumberNotLike(String value) {
            addCriterion("order_number not like", value, "orderNumber");
            return (Criteria) this;
        }

        public Criteria andOrderNumberIn(List<String> values) {
            addCriterion("order_number in", values, "orderNumber");
            return (Criteria) this;
        }

        public Criteria andOrderNumberNotIn(List<String> values) {
            addCriterion("order_number not in", values, "orderNumber");
            return (Criteria) this;
        }

        public Criteria andOrderNumberBetween(String value1, String value2) {
            addCriterion("order_number between", value1, value2, "orderNumber");
            return (Criteria) this;
        }

        public Criteria andOrderNumberNotBetween(String value1, String value2) {
            addCriterion("order_number not between", value1, value2, "orderNumber");
            return (Criteria) this;
        }

        public Criteria andContractNumberIsNull() {
            addCriterion("contract_number is null");
            return (Criteria) this;
        }

        public Criteria andContractNumberIsNotNull() {
            addCriterion("contract_number is not null");
            return (Criteria) this;
        }

        public Criteria andContractNumberEqualTo(String value) {
            addCriterion("contract_number =", value, "contractNumber");
            return (Criteria) this;
        }

        public Criteria andContractNumberNotEqualTo(String value) {
            addCriterion("contract_number <>", value, "contractNumber");
            return (Criteria) this;
        }

        public Criteria andContractNumberGreaterThan(String value) {
            addCriterion("contract_number >", value, "contractNumber");
            return (Criteria) this;
        }

        public Criteria andContractNumberGreaterThanOrEqualTo(String value) {
            addCriterion("contract_number >=", value, "contractNumber");
            return (Criteria) this;
        }

        public Criteria andContractNumberLessThan(String value) {
            addCriterion("contract_number <", value, "contractNumber");
            return (Criteria) this;
        }

        public Criteria andContractNumberLessThanOrEqualTo(String value) {
            addCriterion("contract_number <=", value, "contractNumber");
            return (Criteria) this;
        }

        public Criteria andContractNumberLike(String value) {
            addCriterion("contract_number like", value, "contractNumber");
            return (Criteria) this;
        }

        public Criteria andContractNumberNotLike(String value) {
            addCriterion("contract_number not like", value, "contractNumber");
            return (Criteria) this;
        }

        public Criteria andContractNumberIn(List<String> values) {
            addCriterion("contract_number in", values, "contractNumber");
            return (Criteria) this;
        }

        public Criteria andContractNumberNotIn(List<String> values) {
            addCriterion("contract_number not in", values, "contractNumber");
            return (Criteria) this;
        }

        public Criteria andContractNumberBetween(String value1, String value2) {
            addCriterion("contract_number between", value1, value2, "contractNumber");
            return (Criteria) this;
        }

        public Criteria andContractNumberNotBetween(String value1, String value2) {
            addCriterion("contract_number not between", value1, value2, "contractNumber");
            return (Criteria) this;
        }

        public Criteria andProductOrderDetailIdIsNull() {
            addCriterion("product_order_detail_id is null");
            return (Criteria) this;
        }

        public Criteria andProductOrderDetailIdIsNotNull() {
            addCriterion("product_order_detail_id is not null");
            return (Criteria) this;
        }

        public Criteria andProductOrderDetailIdEqualTo(String value) {
            addCriterion("product_order_detail_id =", value, "productOrderDetailId");
            return (Criteria) this;
        }

        public Criteria andProductOrderDetailIdNotEqualTo(String value) {
            addCriterion("product_order_detail_id <>", value, "productOrderDetailId");
            return (Criteria) this;
        }

        public Criteria andProductOrderDetailIdGreaterThan(String value) {
            addCriterion("product_order_detail_id >", value, "productOrderDetailId");
            return (Criteria) this;
        }

        public Criteria andProductOrderDetailIdGreaterThanOrEqualTo(String value) {
            addCriterion("product_order_detail_id >=", value, "productOrderDetailId");
            return (Criteria) this;
        }

        public Criteria andProductOrderDetailIdLessThan(String value) {
            addCriterion("product_order_detail_id <", value, "productOrderDetailId");
            return (Criteria) this;
        }

        public Criteria andProductOrderDetailIdLessThanOrEqualTo(String value) {
            addCriterion("product_order_detail_id <=", value, "productOrderDetailId");
            return (Criteria) this;
        }

        public Criteria andProductOrderDetailIdLike(String value) {
            addCriterion("product_order_detail_id like", value, "productOrderDetailId");
            return (Criteria) this;
        }

        public Criteria andProductOrderDetailIdNotLike(String value) {
            addCriterion("product_order_detail_id not like", value, "productOrderDetailId");
            return (Criteria) this;
        }

        public Criteria andProductOrderDetailIdIn(List<String> values) {
            addCriterion("product_order_detail_id in", values, "productOrderDetailId");
            return (Criteria) this;
        }

        public Criteria andProductOrderDetailIdNotIn(List<String> values) {
            addCriterion("product_order_detail_id not in", values, "productOrderDetailId");
            return (Criteria) this;
        }

        public Criteria andProductOrderDetailIdBetween(String value1, String value2) {
            addCriterion("product_order_detail_id between", value1, value2, "productOrderDetailId");
            return (Criteria) this;
        }

        public Criteria andProductOrderDetailIdNotBetween(String value1, String value2) {
            addCriterion("product_order_detail_id not between", value1, value2, "productOrderDetailId");
            return (Criteria) this;
        }

        public Criteria andCustomerNameIsNull() {
            addCriterion("customer_name is null");
            return (Criteria) this;
        }

        public Criteria andCustomerNameIsNotNull() {
            addCriterion("customer_name is not null");
            return (Criteria) this;
        }

        public Criteria andCustomerNameEqualTo(String value) {
            addCriterion("customer_name =", value, "customerName");
            return (Criteria) this;
        }

        public Criteria andCustomerNameNotEqualTo(String value) {
            addCriterion("customer_name <>", value, "customerName");
            return (Criteria) this;
        }

        public Criteria andCustomerNameGreaterThan(String value) {
            addCriterion("customer_name >", value, "customerName");
            return (Criteria) this;
        }

        public Criteria andCustomerNameGreaterThanOrEqualTo(String value) {
            addCriterion("customer_name >=", value, "customerName");
            return (Criteria) this;
        }

        public Criteria andCustomerNameLessThan(String value) {
            addCriterion("customer_name <", value, "customerName");
            return (Criteria) this;
        }

        public Criteria andCustomerNameLessThanOrEqualTo(String value) {
            addCriterion("customer_name <=", value, "customerName");
            return (Criteria) this;
        }

        public Criteria andCustomerNameLike(String value) {
            addCriterion("customer_name like", value, "customerName");
            return (Criteria) this;
        }

        public Criteria andCustomerNameNotLike(String value) {
            addCriterion("customer_name not like", value, "customerName");
            return (Criteria) this;
        }

        public Criteria andCustomerNameIn(List<String> values) {
            addCriterion("customer_name in", values, "customerName");
            return (Criteria) this;
        }

        public Criteria andCustomerNameNotIn(List<String> values) {
            addCriterion("customer_name not in", values, "customerName");
            return (Criteria) this;
        }

        public Criteria andCustomerNameBetween(String value1, String value2) {
            addCriterion("customer_name between", value1, value2, "customerName");
            return (Criteria) this;
        }

        public Criteria andCustomerNameNotBetween(String value1, String value2) {
            addCriterion("customer_name not between", value1, value2, "customerName");
            return (Criteria) this;
        }

        public Criteria andExchangeMethodIsNull() {
            addCriterion("exchange_method is null");
            return (Criteria) this;
        }

        public Criteria andExchangeMethodIsNotNull() {
            addCriterion("exchange_method is not null");
            return (Criteria) this;
        }

        public Criteria andExchangeMethodEqualTo(String value) {
            addCriterion("exchange_method =", value, "exchangeMethod");
            return (Criteria) this;
        }

        public Criteria andExchangeMethodNotEqualTo(String value) {
            addCriterion("exchange_method <>", value, "exchangeMethod");
            return (Criteria) this;
        }

        public Criteria andExchangeMethodGreaterThan(String value) {
            addCriterion("exchange_method >", value, "exchangeMethod");
            return (Criteria) this;
        }

        public Criteria andExchangeMethodGreaterThanOrEqualTo(String value) {
            addCriterion("exchange_method >=", value, "exchangeMethod");
            return (Criteria) this;
        }

        public Criteria andExchangeMethodLessThan(String value) {
            addCriterion("exchange_method <", value, "exchangeMethod");
            return (Criteria) this;
        }

        public Criteria andExchangeMethodLessThanOrEqualTo(String value) {
            addCriterion("exchange_method <=", value, "exchangeMethod");
            return (Criteria) this;
        }

        public Criteria andExchangeMethodLike(String value) {
            addCriterion("exchange_method like", value, "exchangeMethod");
            return (Criteria) this;
        }

        public Criteria andExchangeMethodNotLike(String value) {
            addCriterion("exchange_method not like", value, "exchangeMethod");
            return (Criteria) this;
        }

        public Criteria andExchangeMethodIn(List<String> values) {
            addCriterion("exchange_method in", values, "exchangeMethod");
            return (Criteria) this;
        }

        public Criteria andExchangeMethodNotIn(List<String> values) {
            addCriterion("exchange_method not in", values, "exchangeMethod");
            return (Criteria) this;
        }

        public Criteria andExchangeMethodBetween(String value1, String value2) {
            addCriterion("exchange_method between", value1, value2, "exchangeMethod");
            return (Criteria) this;
        }

        public Criteria andExchangeMethodNotBetween(String value1, String value2) {
            addCriterion("exchange_method not between", value1, value2, "exchangeMethod");
            return (Criteria) this;
        }

        public Criteria andContractTypeIsNull() {
            addCriterion("contract_type is null");
            return (Criteria) this;
        }

        public Criteria andContractTypeIsNotNull() {
            addCriterion("contract_type is not null");
            return (Criteria) this;
        }

        public Criteria andContractTypeEqualTo(String value) {
            addCriterion("contract_type =", value, "contractType");
            return (Criteria) this;
        }

        public Criteria andContractTypeNotEqualTo(String value) {
            addCriterion("contract_type <>", value, "contractType");
            return (Criteria) this;
        }

        public Criteria andContractTypeGreaterThan(String value) {
            addCriterion("contract_type >", value, "contractType");
            return (Criteria) this;
        }

        public Criteria andContractTypeGreaterThanOrEqualTo(String value) {
            addCriterion("contract_type >=", value, "contractType");
            return (Criteria) this;
        }

        public Criteria andContractTypeLessThan(String value) {
            addCriterion("contract_type <", value, "contractType");
            return (Criteria) this;
        }

        public Criteria andContractTypeLessThanOrEqualTo(String value) {
            addCriterion("contract_type <=", value, "contractType");
            return (Criteria) this;
        }

        public Criteria andContractTypeLike(String value) {
            addCriterion("contract_type like", value, "contractType");
            return (Criteria) this;
        }

        public Criteria andContractTypeNotLike(String value) {
            addCriterion("contract_type not like", value, "contractType");
            return (Criteria) this;
        }

        public Criteria andContractTypeIn(List<String> values) {
            addCriterion("contract_type in", values, "contractType");
            return (Criteria) this;
        }

        public Criteria andContractTypeNotIn(List<String> values) {
            addCriterion("contract_type not in", values, "contractType");
            return (Criteria) this;
        }

        public Criteria andContractTypeBetween(String value1, String value2) {
            addCriterion("contract_type between", value1, value2, "contractType");
            return (Criteria) this;
        }

        public Criteria andContractTypeNotBetween(String value1, String value2) {
            addCriterion("contract_type not between", value1, value2, "contractType");
            return (Criteria) this;
        }

        public Criteria andRoyaltyStatusIsNull() {
            addCriterion("royalty_status is null");
            return (Criteria) this;
        }

        public Criteria andRoyaltyStatusIsNotNull() {
            addCriterion("royalty_status is not null");
            return (Criteria) this;
        }

        public Criteria andRoyaltyStatusEqualTo(String value) {
            addCriterion("royalty_status =", value, "royaltyStatus");
            return (Criteria) this;
        }

        public Criteria andRoyaltyStatusNotEqualTo(String value) {
            addCriterion("royalty_status <>", value, "royaltyStatus");
            return (Criteria) this;
        }

        public Criteria andRoyaltyStatusGreaterThan(String value) {
            addCriterion("royalty_status >", value, "royaltyStatus");
            return (Criteria) this;
        }

        public Criteria andRoyaltyStatusGreaterThanOrEqualTo(String value) {
            addCriterion("royalty_status >=", value, "royaltyStatus");
            return (Criteria) this;
        }

        public Criteria andRoyaltyStatusLessThan(String value) {
            addCriterion("royalty_status <", value, "royaltyStatus");
            return (Criteria) this;
        }

        public Criteria andRoyaltyStatusLessThanOrEqualTo(String value) {
            addCriterion("royalty_status <=", value, "royaltyStatus");
            return (Criteria) this;
        }

        public Criteria andRoyaltyStatusLike(String value) {
            addCriterion("royalty_status like", value, "royaltyStatus");
            return (Criteria) this;
        }

        public Criteria andRoyaltyStatusNotLike(String value) {
            addCriterion("royalty_status not like", value, "royaltyStatus");
            return (Criteria) this;
        }

        public Criteria andRoyaltyStatusIn(List<String> values) {
            addCriterion("royalty_status in", values, "royaltyStatus");
            return (Criteria) this;
        }

        public Criteria andRoyaltyStatusNotIn(List<String> values) {
            addCriterion("royalty_status not in", values, "royaltyStatus");
            return (Criteria) this;
        }

        public Criteria andRoyaltyStatusBetween(String value1, String value2) {
            addCriterion("royalty_status between", value1, value2, "royaltyStatus");
            return (Criteria) this;
        }

        public Criteria andRoyaltyStatusNotBetween(String value1, String value2) {
            addCriterion("royalty_status not between", value1, value2, "royaltyStatus");
            return (Criteria) this;
        }

        public Criteria andPerformanceConversionRatioIsNull() {
            addCriterion("performance_conversion_ratio is null");
            return (Criteria) this;
        }

        public Criteria andPerformanceConversionRatioIsNotNull() {
            addCriterion("performance_conversion_ratio is not null");
            return (Criteria) this;
        }

        public Criteria andPerformanceConversionRatioEqualTo(BigDecimal value) {
            addCriterion("performance_conversion_ratio =", value, "performanceConversionRatio");
            return (Criteria) this;
        }

        public Criteria andPerformanceConversionRatioNotEqualTo(BigDecimal value) {
            addCriterion("performance_conversion_ratio <>", value, "performanceConversionRatio");
            return (Criteria) this;
        }

        public Criteria andPerformanceConversionRatioGreaterThan(BigDecimal value) {
            addCriterion("performance_conversion_ratio >", value, "performanceConversionRatio");
            return (Criteria) this;
        }

        public Criteria andPerformanceConversionRatioGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("performance_conversion_ratio >=", value, "performanceConversionRatio");
            return (Criteria) this;
        }

        public Criteria andPerformanceConversionRatioLessThan(BigDecimal value) {
            addCriterion("performance_conversion_ratio <", value, "performanceConversionRatio");
            return (Criteria) this;
        }

        public Criteria andPerformanceConversionRatioLessThanOrEqualTo(BigDecimal value) {
            addCriterion("performance_conversion_ratio <=", value, "performanceConversionRatio");
            return (Criteria) this;
        }

        public Criteria andPerformanceConversionRatioIn(List<BigDecimal> values) {
            addCriterion("performance_conversion_ratio in", values, "performanceConversionRatio");
            return (Criteria) this;
        }

        public Criteria andPerformanceConversionRatioNotIn(List<BigDecimal> values) {
            addCriterion("performance_conversion_ratio not in", values, "performanceConversionRatio");
            return (Criteria) this;
        }

        public Criteria andPerformanceConversionRatioBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("performance_conversion_ratio between", value1, value2, "performanceConversionRatio");
            return (Criteria) this;
        }

        public Criteria andPerformanceConversionRatioNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("performance_conversion_ratio not between", value1, value2, "performanceConversionRatio");
            return (Criteria) this;
        }

        public Criteria andGradeMoneyIsNull() {
            addCriterion("grade_money is null");
            return (Criteria) this;
        }

        public Criteria andGradeMoneyIsNotNull() {
            addCriterion("grade_money is not null");
            return (Criteria) this;
        }

        public Criteria andGradeMoneyEqualTo(BigDecimal value) {
            addCriterion("grade_money =", value, "gradeMoney");
            return (Criteria) this;
        }

        public Criteria andGradeMoneyNotEqualTo(BigDecimal value) {
            addCriterion("grade_money <>", value, "gradeMoney");
            return (Criteria) this;
        }

        public Criteria andGradeMoneyGreaterThan(BigDecimal value) {
            addCriterion("grade_money >", value, "gradeMoney");
            return (Criteria) this;
        }

        public Criteria andGradeMoneyGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("grade_money >=", value, "gradeMoney");
            return (Criteria) this;
        }

        public Criteria andGradeMoneyLessThan(BigDecimal value) {
            addCriterion("grade_money <", value, "gradeMoney");
            return (Criteria) this;
        }

        public Criteria andGradeMoneyLessThanOrEqualTo(BigDecimal value) {
            addCriterion("grade_money <=", value, "gradeMoney");
            return (Criteria) this;
        }

        public Criteria andGradeMoneyIn(List<BigDecimal> values) {
            addCriterion("grade_money in", values, "gradeMoney");
            return (Criteria) this;
        }

        public Criteria andGradeMoneyNotIn(List<BigDecimal> values) {
            addCriterion("grade_money not in", values, "gradeMoney");
            return (Criteria) this;
        }

        public Criteria andGradeMoneyBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("grade_money between", value1, value2, "gradeMoney");
            return (Criteria) this;
        }

        public Criteria andGradeMoneyNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("grade_money not between", value1, value2, "gradeMoney");
            return (Criteria) this;
        }

        public Criteria andPartGradeMoneyIsNull() {
            addCriterion("part_grade_money is null");
            return (Criteria) this;
        }

        public Criteria andPartGradeMoneyIsNotNull() {
            addCriterion("part_grade_money is not null");
            return (Criteria) this;
        }

        public Criteria andPartGradeMoneyEqualTo(BigDecimal value) {
            addCriterion("part_grade_money =", value, "partGradeMoney");
            return (Criteria) this;
        }

        public Criteria andPartGradeMoneyNotEqualTo(BigDecimal value) {
            addCriterion("part_grade_money <>", value, "partGradeMoney");
            return (Criteria) this;
        }

        public Criteria andPartGradeMoneyGreaterThan(BigDecimal value) {
            addCriterion("part_grade_money >", value, "partGradeMoney");
            return (Criteria) this;
        }

        public Criteria andPartGradeMoneyGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("part_grade_money >=", value, "partGradeMoney");
            return (Criteria) this;
        }

        public Criteria andPartGradeMoneyLessThan(BigDecimal value) {
            addCriterion("part_grade_money <", value, "partGradeMoney");
            return (Criteria) this;
        }

        public Criteria andPartGradeMoneyLessThanOrEqualTo(BigDecimal value) {
            addCriterion("part_grade_money <=", value, "partGradeMoney");
            return (Criteria) this;
        }

        public Criteria andPartGradeMoneyIn(List<BigDecimal> values) {
            addCriterion("part_grade_money in", values, "partGradeMoney");
            return (Criteria) this;
        }

        public Criteria andPartGradeMoneyNotIn(List<BigDecimal> values) {
            addCriterion("part_grade_money not in", values, "partGradeMoney");
            return (Criteria) this;
        }

        public Criteria andPartGradeMoneyBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("part_grade_money between", value1, value2, "partGradeMoney");
            return (Criteria) this;
        }

        public Criteria andPartGradeMoneyNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("part_grade_money not between", value1, value2, "partGradeMoney");
            return (Criteria) this;
        }

        public Criteria andRoyaltyMoneyIsNull() {
            addCriterion("royalty_money is null");
            return (Criteria) this;
        }

        public Criteria andRoyaltyMoneyIsNotNull() {
            addCriterion("royalty_money is not null");
            return (Criteria) this;
        }

        public Criteria andRoyaltyMoneyEqualTo(BigDecimal value) {
            addCriterion("royalty_money =", value, "royaltyMoney");
            return (Criteria) this;
        }

        public Criteria andRoyaltyMoneyNotEqualTo(BigDecimal value) {
            addCriterion("royalty_money <>", value, "royaltyMoney");
            return (Criteria) this;
        }

        public Criteria andRoyaltyMoneyGreaterThan(BigDecimal value) {
            addCriterion("royalty_money >", value, "royaltyMoney");
            return (Criteria) this;
        }

        public Criteria andRoyaltyMoneyGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("royalty_money >=", value, "royaltyMoney");
            return (Criteria) this;
        }

        public Criteria andRoyaltyMoneyLessThan(BigDecimal value) {
            addCriterion("royalty_money <", value, "royaltyMoney");
            return (Criteria) this;
        }

        public Criteria andRoyaltyMoneyLessThanOrEqualTo(BigDecimal value) {
            addCriterion("royalty_money <=", value, "royaltyMoney");
            return (Criteria) this;
        }

        public Criteria andRoyaltyMoneyIn(List<BigDecimal> values) {
            addCriterion("royalty_money in", values, "royaltyMoney");
            return (Criteria) this;
        }

        public Criteria andRoyaltyMoneyNotIn(List<BigDecimal> values) {
            addCriterion("royalty_money not in", values, "royaltyMoney");
            return (Criteria) this;
        }

        public Criteria andRoyaltyMoneyBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("royalty_money between", value1, value2, "royaltyMoney");
            return (Criteria) this;
        }

        public Criteria andRoyaltyMoneyNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("royalty_money not between", value1, value2, "royaltyMoney");
            return (Criteria) this;
        }

        public Criteria andRoyaltyRecordTimeIsNull() {
            addCriterion("royalty_record_time is null");
            return (Criteria) this;
        }

        public Criteria andRoyaltyRecordTimeIsNotNull() {
            addCriterion("royalty_record_time is not null");
            return (Criteria) this;
        }

        public Criteria andRoyaltyRecordTimeEqualTo(Date value) {
            addCriterion("royalty_record_time =", value, "royaltyRecordTime");
            return (Criteria) this;
        }

        public Criteria andRoyaltyRecordTimeNotEqualTo(Date value) {
            addCriterion("royalty_record_time <>", value, "royaltyRecordTime");
            return (Criteria) this;
        }

        public Criteria andRoyaltyRecordTimeGreaterThan(Date value) {
            addCriterion("royalty_record_time >", value, "royaltyRecordTime");
            return (Criteria) this;
        }

        public Criteria andRoyaltyRecordTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("royalty_record_time >=", value, "royaltyRecordTime");
            return (Criteria) this;
        }

        public Criteria andRoyaltyRecordTimeLessThan(Date value) {
            addCriterion("royalty_record_time <", value, "royaltyRecordTime");
            return (Criteria) this;
        }

        public Criteria andRoyaltyRecordTimeLessThanOrEqualTo(Date value) {
            addCriterion("royalty_record_time <=", value, "royaltyRecordTime");
            return (Criteria) this;
        }

        public Criteria andRoyaltyRecordTimeIn(List<Date> values) {
            addCriterion("royalty_record_time in", values, "royaltyRecordTime");
            return (Criteria) this;
        }

        public Criteria andRoyaltyRecordTimeNotIn(List<Date> values) {
            addCriterion("royalty_record_time not in", values, "royaltyRecordTime");
            return (Criteria) this;
        }

        public Criteria andRoyaltyRecordTimeBetween(Date value1, Date value2) {
            addCriterion("royalty_record_time between", value1, value2, "royaltyRecordTime");
            return (Criteria) this;
        }

        public Criteria andRoyaltyRecordTimeNotBetween(Date value1, Date value2) {
            addCriterion("royalty_record_time not between", value1, value2, "royaltyRecordTime");
            return (Criteria) this;
        }

        public Criteria andRoyaltyAccountIdIsNull() {
            addCriterion("royalty_account_id is null");
            return (Criteria) this;
        }

        public Criteria andRoyaltyAccountIdIsNotNull() {
            addCriterion("royalty_account_id is not null");
            return (Criteria) this;
        }

        public Criteria andRoyaltyAccountIdEqualTo(String value) {
            addCriterion("royalty_account_id =", value, "royaltyAccountId");
            return (Criteria) this;
        }

        public Criteria andRoyaltyAccountIdNotEqualTo(String value) {
            addCriterion("royalty_account_id <>", value, "royaltyAccountId");
            return (Criteria) this;
        }

        public Criteria andRoyaltyAccountIdGreaterThan(String value) {
            addCriterion("royalty_account_id >", value, "royaltyAccountId");
            return (Criteria) this;
        }

        public Criteria andRoyaltyAccountIdGreaterThanOrEqualTo(String value) {
            addCriterion("royalty_account_id >=", value, "royaltyAccountId");
            return (Criteria) this;
        }

        public Criteria andRoyaltyAccountIdLessThan(String value) {
            addCriterion("royalty_account_id <", value, "royaltyAccountId");
            return (Criteria) this;
        }

        public Criteria andRoyaltyAccountIdLessThanOrEqualTo(String value) {
            addCriterion("royalty_account_id <=", value, "royaltyAccountId");
            return (Criteria) this;
        }

        public Criteria andRoyaltyAccountIdLike(String value) {
            addCriterion("royalty_account_id like", value, "royaltyAccountId");
            return (Criteria) this;
        }

        public Criteria andRoyaltyAccountIdNotLike(String value) {
            addCriterion("royalty_account_id not like", value, "royaltyAccountId");
            return (Criteria) this;
        }

        public Criteria andRoyaltyAccountIdIn(List<String> values) {
            addCriterion("royalty_account_id in", values, "royaltyAccountId");
            return (Criteria) this;
        }

        public Criteria andRoyaltyAccountIdNotIn(List<String> values) {
            addCriterion("royalty_account_id not in", values, "royaltyAccountId");
            return (Criteria) this;
        }

        public Criteria andRoyaltyAccountIdBetween(String value1, String value2) {
            addCriterion("royalty_account_id between", value1, value2, "royaltyAccountId");
            return (Criteria) this;
        }

        public Criteria andRoyaltyAccountIdNotBetween(String value1, String value2) {
            addCriterion("royalty_account_id not between", value1, value2, "royaltyAccountId");
            return (Criteria) this;
        }

        public Criteria andProductStatusIsNull() {
            addCriterion("product_status is null");
            return (Criteria) this;
        }

        public Criteria andProductStatusIsNotNull() {
            addCriterion("product_status is not null");
            return (Criteria) this;
        }

        public Criteria andProductStatusEqualTo(String value) {
            addCriterion("product_status =", value, "productStatus");
            return (Criteria) this;
        }

        public Criteria andProductStatusNotEqualTo(String value) {
            addCriterion("product_status <>", value, "productStatus");
            return (Criteria) this;
        }

        public Criteria andProductStatusGreaterThan(String value) {
            addCriterion("product_status >", value, "productStatus");
            return (Criteria) this;
        }

        public Criteria andProductStatusGreaterThanOrEqualTo(String value) {
            addCriterion("product_status >=", value, "productStatus");
            return (Criteria) this;
        }

        public Criteria andProductStatusLessThan(String value) {
            addCriterion("product_status <", value, "productStatus");
            return (Criteria) this;
        }

        public Criteria andProductStatusLessThanOrEqualTo(String value) {
            addCriterion("product_status <=", value, "productStatus");
            return (Criteria) this;
        }

        public Criteria andProductStatusLike(String value) {
            addCriterion("product_status like", value, "productStatus");
            return (Criteria) this;
        }

        public Criteria andProductStatusNotLike(String value) {
            addCriterion("product_status not like", value, "productStatus");
            return (Criteria) this;
        }

        public Criteria andProductStatusIn(List<String> values) {
            addCriterion("product_status in", values, "productStatus");
            return (Criteria) this;
        }

        public Criteria andProductStatusNotIn(List<String> values) {
            addCriterion("product_status not in", values, "productStatus");
            return (Criteria) this;
        }

        public Criteria andProductStatusBetween(String value1, String value2) {
            addCriterion("product_status between", value1, value2, "productStatus");
            return (Criteria) this;
        }

        public Criteria andProductStatusNotBetween(String value1, String value2) {
            addCriterion("product_status not between", value1, value2, "productStatus");
            return (Criteria) this;
        }

        public Criteria andCooperateTypeIsNull() {
            addCriterion("cooperate_type is null");
            return (Criteria) this;
        }

        public Criteria andCooperateTypeIsNotNull() {
            addCriterion("cooperate_type is not null");
            return (Criteria) this;
        }

        public Criteria andCooperateTypeEqualTo(String value) {
            addCriterion("cooperate_type =", value, "cooperateType");
            return (Criteria) this;
        }

        public Criteria andCooperateTypeNotEqualTo(String value) {
            addCriterion("cooperate_type <>", value, "cooperateType");
            return (Criteria) this;
        }

        public Criteria andCooperateTypeGreaterThan(String value) {
            addCriterion("cooperate_type >", value, "cooperateType");
            return (Criteria) this;
        }

        public Criteria andCooperateTypeGreaterThanOrEqualTo(String value) {
            addCriterion("cooperate_type >=", value, "cooperateType");
            return (Criteria) this;
        }

        public Criteria andCooperateTypeLessThan(String value) {
            addCriterion("cooperate_type <", value, "cooperateType");
            return (Criteria) this;
        }

        public Criteria andCooperateTypeLessThanOrEqualTo(String value) {
            addCriterion("cooperate_type <=", value, "cooperateType");
            return (Criteria) this;
        }

        public Criteria andCooperateTypeLike(String value) {
            addCriterion("cooperate_type like", value, "cooperateType");
            return (Criteria) this;
        }

        public Criteria andCooperateTypeNotLike(String value) {
            addCriterion("cooperate_type not like", value, "cooperateType");
            return (Criteria) this;
        }

        public Criteria andCooperateTypeIn(List<String> values) {
            addCriterion("cooperate_type in", values, "cooperateType");
            return (Criteria) this;
        }

        public Criteria andCooperateTypeNotIn(List<String> values) {
            addCriterion("cooperate_type not in", values, "cooperateType");
            return (Criteria) this;
        }

        public Criteria andCooperateTypeBetween(String value1, String value2) {
            addCriterion("cooperate_type between", value1, value2, "cooperateType");
            return (Criteria) this;
        }

        public Criteria andCooperateTypeNotBetween(String value1, String value2) {
            addCriterion("cooperate_type not between", value1, value2, "cooperateType");
            return (Criteria) this;
        }

        public Criteria andDelFlagIsNull() {
            addCriterion("del_flag is null");
            return (Criteria) this;
        }

        public Criteria andDelFlagIsNotNull() {
            addCriterion("del_flag is not null");
            return (Criteria) this;
        }

        public Criteria andDelFlagEqualTo(String value) {
            addCriterion("del_flag =", value, "delFlag");
            return (Criteria) this;
        }

        public Criteria andDelFlagNotEqualTo(String value) {
            addCriterion("del_flag <>", value, "delFlag");
            return (Criteria) this;
        }

        public Criteria andDelFlagGreaterThan(String value) {
            addCriterion("del_flag >", value, "delFlag");
            return (Criteria) this;
        }

        public Criteria andDelFlagGreaterThanOrEqualTo(String value) {
            addCriterion("del_flag >=", value, "delFlag");
            return (Criteria) this;
        }

        public Criteria andDelFlagLessThan(String value) {
            addCriterion("del_flag <", value, "delFlag");
            return (Criteria) this;
        }

        public Criteria andDelFlagLessThanOrEqualTo(String value) {
            addCriterion("del_flag <=", value, "delFlag");
            return (Criteria) this;
        }

        public Criteria andDelFlagLike(String value) {
            addCriterion("del_flag like", value, "delFlag");
            return (Criteria) this;
        }

        public Criteria andDelFlagNotLike(String value) {
            addCriterion("del_flag not like", value, "delFlag");
            return (Criteria) this;
        }

        public Criteria andDelFlagIn(List<String> values) {
            addCriterion("del_flag in", values, "delFlag");
            return (Criteria) this;
        }

        public Criteria andDelFlagNotIn(List<String> values) {
            addCriterion("del_flag not in", values, "delFlag");
            return (Criteria) this;
        }

        public Criteria andDelFlagBetween(String value1, String value2) {
            addCriterion("del_flag between", value1, value2, "delFlag");
            return (Criteria) this;
        }

        public Criteria andDelFlagNotBetween(String value1, String value2) {
            addCriterion("del_flag not between", value1, value2, "delFlag");
            return (Criteria) this;
        }

        public Criteria andProductStrokesServiceNumberIsNull() {
            addCriterion("product_strokes_service_number is null");
            return (Criteria) this;
        }

        public Criteria andProductStrokesServiceNumberIsNotNull() {
            addCriterion("product_strokes_service_number is not null");
            return (Criteria) this;
        }

        public Criteria andProductStrokesServiceNumberEqualTo(Integer value) {
            addCriterion("product_strokes_service_number =", value, "productStrokesServiceNumber");
            return (Criteria) this;
        }

        public Criteria andProductStrokesServiceNumberNotEqualTo(Integer value) {
            addCriterion("product_strokes_service_number <>", value, "productStrokesServiceNumber");
            return (Criteria) this;
        }

        public Criteria andProductStrokesServiceNumberGreaterThan(Integer value) {
            addCriterion("product_strokes_service_number >", value, "productStrokesServiceNumber");
            return (Criteria) this;
        }

        public Criteria andProductStrokesServiceNumberGreaterThanOrEqualTo(Integer value) {
            addCriterion("product_strokes_service_number >=", value, "productStrokesServiceNumber");
            return (Criteria) this;
        }

        public Criteria andProductStrokesServiceNumberLessThan(Integer value) {
            addCriterion("product_strokes_service_number <", value, "productStrokesServiceNumber");
            return (Criteria) this;
        }

        public Criteria andProductStrokesServiceNumberLessThanOrEqualTo(Integer value) {
            addCriterion("product_strokes_service_number <=", value, "productStrokesServiceNumber");
            return (Criteria) this;
        }

        public Criteria andProductStrokesServiceNumberIn(List<Integer> values) {
            addCriterion("product_strokes_service_number in", values, "productStrokesServiceNumber");
            return (Criteria) this;
        }

        public Criteria andProductStrokesServiceNumberNotIn(List<Integer> values) {
            addCriterion("product_strokes_service_number not in", values, "productStrokesServiceNumber");
            return (Criteria) this;
        }

        public Criteria andProductStrokesServiceNumberBetween(Integer value1, Integer value2) {
            addCriterion("product_strokes_service_number between", value1, value2, "productStrokesServiceNumber");
            return (Criteria) this;
        }

        public Criteria andProductStrokesServiceNumberNotBetween(Integer value1, Integer value2) {
            addCriterion("product_strokes_service_number not between", value1, value2, "productStrokesServiceNumber");
            return (Criteria) this;
        }

        public Criteria andProductStrokesIndustryNumberIsNull() {
            addCriterion("product_strokes_industry_number is null");
            return (Criteria) this;
        }

        public Criteria andProductStrokesIndustryNumberIsNotNull() {
            addCriterion("product_strokes_industry_number is not null");
            return (Criteria) this;
        }

        public Criteria andProductStrokesIndustryNumberEqualTo(Integer value) {
            addCriterion("product_strokes_industry_number =", value, "productStrokesIndustryNumber");
            return (Criteria) this;
        }

        public Criteria andProductStrokesIndustryNumberNotEqualTo(Integer value) {
            addCriterion("product_strokes_industry_number <>", value, "productStrokesIndustryNumber");
            return (Criteria) this;
        }

        public Criteria andProductStrokesIndustryNumberGreaterThan(Integer value) {
            addCriterion("product_strokes_industry_number >", value, "productStrokesIndustryNumber");
            return (Criteria) this;
        }

        public Criteria andProductStrokesIndustryNumberGreaterThanOrEqualTo(Integer value) {
            addCriterion("product_strokes_industry_number >=", value, "productStrokesIndustryNumber");
            return (Criteria) this;
        }

        public Criteria andProductStrokesIndustryNumberLessThan(Integer value) {
            addCriterion("product_strokes_industry_number <", value, "productStrokesIndustryNumber");
            return (Criteria) this;
        }

        public Criteria andProductStrokesIndustryNumberLessThanOrEqualTo(Integer value) {
            addCriterion("product_strokes_industry_number <=", value, "productStrokesIndustryNumber");
            return (Criteria) this;
        }

        public Criteria andProductStrokesIndustryNumberIn(List<Integer> values) {
            addCriterion("product_strokes_industry_number in", values, "productStrokesIndustryNumber");
            return (Criteria) this;
        }

        public Criteria andProductStrokesIndustryNumberNotIn(List<Integer> values) {
            addCriterion("product_strokes_industry_number not in", values, "productStrokesIndustryNumber");
            return (Criteria) this;
        }

        public Criteria andProductStrokesIndustryNumberBetween(Integer value1, Integer value2) {
            addCriterion("product_strokes_industry_number between", value1, value2, "productStrokesIndustryNumber");
            return (Criteria) this;
        }

        public Criteria andProductStrokesIndustryNumberNotBetween(Integer value1, Integer value2) {
            addCriterion("product_strokes_industry_number not between", value1, value2, "productStrokesIndustryNumber");
            return (Criteria) this;
        }

        public Criteria andArriveTimeIsNull() {
            addCriterion("arrive_time is null");
            return (Criteria) this;
        }

        public Criteria andArriveTimeIsNotNull() {
            addCriterion("arrive_time is not null");
            return (Criteria) this;
        }

        public Criteria andArriveTimeEqualTo(Date value) {
            addCriterion("arrive_time =", value, "arriveTime");
            return (Criteria) this;
        }

        public Criteria andArriveTimeNotEqualTo(Date value) {
            addCriterion("arrive_time <>", value, "arriveTime");
            return (Criteria) this;
        }

        public Criteria andArriveTimeGreaterThan(Date value) {
            addCriterion("arrive_time >", value, "arriveTime");
            return (Criteria) this;
        }

        public Criteria andArriveTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("arrive_time >=", value, "arriveTime");
            return (Criteria) this;
        }

        public Criteria andArriveTimeLessThan(Date value) {
            addCriterion("arrive_time <", value, "arriveTime");
            return (Criteria) this;
        }

        public Criteria andArriveTimeLessThanOrEqualTo(Date value) {
            addCriterion("arrive_time <=", value, "arriveTime");
            return (Criteria) this;
        }

        public Criteria andArriveTimeIn(List<Date> values) {
            addCriterion("arrive_time in", values, "arriveTime");
            return (Criteria) this;
        }

        public Criteria andArriveTimeNotIn(List<Date> values) {
            addCriterion("arrive_time not in", values, "arriveTime");
            return (Criteria) this;
        }

        public Criteria andArriveTimeBetween(Date value1, Date value2) {
            addCriterion("arrive_time between", value1, value2, "arriveTime");
            return (Criteria) this;
        }

        public Criteria andArriveTimeNotBetween(Date value1, Date value2) {
            addCriterion("arrive_time not between", value1, value2, "arriveTime");
            return (Criteria) this;
        }

        public Criteria andSalesmanIdIsNull() {
            addCriterion("salesman_id is null");
            return (Criteria) this;
        }

        public Criteria andSalesmanIdIsNotNull() {
            addCriterion("salesman_id is not null");
            return (Criteria) this;
        }

        public Criteria andSalesmanIdEqualTo(String value) {
            addCriterion("salesman_id =", value, "salesmanId");
            return (Criteria) this;
        }

        public Criteria andSalesmanIdNotEqualTo(String value) {
            addCriterion("salesman_id <>", value, "salesmanId");
            return (Criteria) this;
        }

        public Criteria andSalesmanIdGreaterThan(String value) {
            addCriterion("salesman_id >", value, "salesmanId");
            return (Criteria) this;
        }

        public Criteria andSalesmanIdGreaterThanOrEqualTo(String value) {
            addCriterion("salesman_id >=", value, "salesmanId");
            return (Criteria) this;
        }

        public Criteria andSalesmanIdLessThan(String value) {
            addCriterion("salesman_id <", value, "salesmanId");
            return (Criteria) this;
        }

        public Criteria andSalesmanIdLessThanOrEqualTo(String value) {
            addCriterion("salesman_id <=", value, "salesmanId");
            return (Criteria) this;
        }

        public Criteria andSalesmanIdLike(String value) {
            addCriterion("salesman_id like", value, "salesmanId");
            return (Criteria) this;
        }

        public Criteria andSalesmanIdNotLike(String value) {
            addCriterion("salesman_id not like", value, "salesmanId");
            return (Criteria) this;
        }

        public Criteria andSalesmanIdIn(List<String> values) {
            addCriterion("salesman_id in", values, "salesmanId");
            return (Criteria) this;
        }

        public Criteria andSalesmanIdNotIn(List<String> values) {
            addCriterion("salesman_id not in", values, "salesmanId");
            return (Criteria) this;
        }

        public Criteria andSalesmanIdBetween(String value1, String value2) {
            addCriterion("salesman_id between", value1, value2, "salesmanId");
            return (Criteria) this;
        }

        public Criteria andSalesmanIdNotBetween(String value1, String value2) {
            addCriterion("salesman_id not between", value1, value2, "salesmanId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdIsNull() {
            addCriterion("company_id is null");
            return (Criteria) this;
        }

        public Criteria andCompanyIdIsNotNull() {
            addCriterion("company_id is not null");
            return (Criteria) this;
        }

        public Criteria andCompanyIdEqualTo(String value) {
            addCriterion("company_id =", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdNotEqualTo(String value) {
            addCriterion("company_id <>", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdGreaterThan(String value) {
            addCriterion("company_id >", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdGreaterThanOrEqualTo(String value) {
            addCriterion("company_id >=", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdLessThan(String value) {
            addCriterion("company_id <", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdLessThanOrEqualTo(String value) {
            addCriterion("company_id <=", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdLike(String value) {
            addCriterion("company_id like", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdNotLike(String value) {
            addCriterion("company_id not like", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdIn(List<String> values) {
            addCriterion("company_id in", values, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdNotIn(List<String> values) {
            addCriterion("company_id not in", values, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdBetween(String value1, String value2) {
            addCriterion("company_id between", value1, value2, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdNotBetween(String value1, String value2) {
            addCriterion("company_id not between", value1, value2, "companyId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdIsNull() {
            addCriterion("create_people_id is null");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdIsNotNull() {
            addCriterion("create_people_id is not null");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdEqualTo(String value) {
            addCriterion("create_people_id =", value, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdNotEqualTo(String value) {
            addCriterion("create_people_id <>", value, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdGreaterThan(String value) {
            addCriterion("create_people_id >", value, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdGreaterThanOrEqualTo(String value) {
            addCriterion("create_people_id >=", value, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdLessThan(String value) {
            addCriterion("create_people_id <", value, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdLessThanOrEqualTo(String value) {
            addCriterion("create_people_id <=", value, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdLike(String value) {
            addCriterion("create_people_id like", value, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdNotLike(String value) {
            addCriterion("create_people_id not like", value, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdIn(List<String> values) {
            addCriterion("create_people_id in", values, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdNotIn(List<String> values) {
            addCriterion("create_people_id not in", values, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdBetween(String value1, String value2) {
            addCriterion("create_people_id between", value1, value2, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdNotBetween(String value1, String value2) {
            addCriterion("create_people_id not between", value1, value2, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreateTmIsNull() {
            addCriterion("create_tm is null");
            return (Criteria) this;
        }

        public Criteria andCreateTmIsNotNull() {
            addCriterion("create_tm is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTmEqualTo(Date value) {
            addCriterion("create_tm =", value, "createTm");
            return (Criteria) this;
        }

        public Criteria andCreateTmNotEqualTo(Date value) {
            addCriterion("create_tm <>", value, "createTm");
            return (Criteria) this;
        }

        public Criteria andCreateTmGreaterThan(Date value) {
            addCriterion("create_tm >", value, "createTm");
            return (Criteria) this;
        }

        public Criteria andCreateTmGreaterThanOrEqualTo(Date value) {
            addCriterion("create_tm >=", value, "createTm");
            return (Criteria) this;
        }

        public Criteria andCreateTmLessThan(Date value) {
            addCriterion("create_tm <", value, "createTm");
            return (Criteria) this;
        }

        public Criteria andCreateTmLessThanOrEqualTo(Date value) {
            addCriterion("create_tm <=", value, "createTm");
            return (Criteria) this;
        }

        public Criteria andCreateTmIn(List<Date> values) {
            addCriterion("create_tm in", values, "createTm");
            return (Criteria) this;
        }

        public Criteria andCreateTmNotIn(List<Date> values) {
            addCriterion("create_tm not in", values, "createTm");
            return (Criteria) this;
        }

        public Criteria andCreateTmBetween(Date value1, Date value2) {
            addCriterion("create_tm between", value1, value2, "createTm");
            return (Criteria) this;
        }

        public Criteria andCreateTmNotBetween(Date value1, Date value2) {
            addCriterion("create_tm not between", value1, value2, "createTm");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdIsNull() {
            addCriterion("update_people_id is null");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdIsNotNull() {
            addCriterion("update_people_id is not null");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdEqualTo(String value) {
            addCriterion("update_people_id =", value, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdNotEqualTo(String value) {
            addCriterion("update_people_id <>", value, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdGreaterThan(String value) {
            addCriterion("update_people_id >", value, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdGreaterThanOrEqualTo(String value) {
            addCriterion("update_people_id >=", value, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdLessThan(String value) {
            addCriterion("update_people_id <", value, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdLessThanOrEqualTo(String value) {
            addCriterion("update_people_id <=", value, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdLike(String value) {
            addCriterion("update_people_id like", value, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdNotLike(String value) {
            addCriterion("update_people_id not like", value, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdIn(List<String> values) {
            addCriterion("update_people_id in", values, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdNotIn(List<String> values) {
            addCriterion("update_people_id not in", values, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdBetween(String value1, String value2) {
            addCriterion("update_people_id between", value1, value2, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdNotBetween(String value1, String value2) {
            addCriterion("update_people_id not between", value1, value2, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdateTmIsNull() {
            addCriterion("update_tm is null");
            return (Criteria) this;
        }

        public Criteria andUpdateTmIsNotNull() {
            addCriterion("update_tm is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateTmEqualTo(Date value) {
            addCriterion("update_tm =", value, "updateTm");
            return (Criteria) this;
        }

        public Criteria andUpdateTmNotEqualTo(Date value) {
            addCriterion("update_tm <>", value, "updateTm");
            return (Criteria) this;
        }

        public Criteria andUpdateTmGreaterThan(Date value) {
            addCriterion("update_tm >", value, "updateTm");
            return (Criteria) this;
        }

        public Criteria andUpdateTmGreaterThanOrEqualTo(Date value) {
            addCriterion("update_tm >=", value, "updateTm");
            return (Criteria) this;
        }

        public Criteria andUpdateTmLessThan(Date value) {
            addCriterion("update_tm <", value, "updateTm");
            return (Criteria) this;
        }

        public Criteria andUpdateTmLessThanOrEqualTo(Date value) {
            addCriterion("update_tm <=", value, "updateTm");
            return (Criteria) this;
        }

        public Criteria andUpdateTmIn(List<Date> values) {
            addCriterion("update_tm in", values, "updateTm");
            return (Criteria) this;
        }

        public Criteria andUpdateTmNotIn(List<Date> values) {
            addCriterion("update_tm not in", values, "updateTm");
            return (Criteria) this;
        }

        public Criteria andUpdateTmBetween(Date value1, Date value2) {
            addCriterion("update_tm between", value1, value2, "updateTm");
            return (Criteria) this;
        }

        public Criteria andUpdateTmNotBetween(Date value1, Date value2) {
            addCriterion("update_tm not between", value1, value2, "updateTm");
            return (Criteria) this;
        }

        public Criteria andBatchUpdatePriceIsNull() {
            addCriterion("batch_update_price is null");
            return (Criteria) this;
        }

        public Criteria andBatchUpdatePriceIsNotNull() {
            addCriterion("batch_update_price is not null");
            return (Criteria) this;
        }

        public Criteria andBatchUpdatePriceEqualTo(String value) {
            addCriterion("batch_update_price =", value, "batchUpdatePrice");
            return (Criteria) this;
        }

        public Criteria andBatchUpdatePriceNotEqualTo(String value) {
            addCriterion("batch_update_price <>", value, "batchUpdatePrice");
            return (Criteria) this;
        }

        public Criteria andBatchUpdatePriceGreaterThan(String value) {
            addCriterion("batch_update_price >", value, "batchUpdatePrice");
            return (Criteria) this;
        }

        public Criteria andBatchUpdatePriceGreaterThanOrEqualTo(String value) {
            addCriterion("batch_update_price >=", value, "batchUpdatePrice");
            return (Criteria) this;
        }

        public Criteria andBatchUpdatePriceLessThan(String value) {
            addCriterion("batch_update_price <", value, "batchUpdatePrice");
            return (Criteria) this;
        }

        public Criteria andBatchUpdatePriceLessThanOrEqualTo(String value) {
            addCriterion("batch_update_price <=", value, "batchUpdatePrice");
            return (Criteria) this;
        }

        public Criteria andBatchUpdatePriceLike(String value) {
            addCriterion("batch_update_price like", value, "batchUpdatePrice");
            return (Criteria) this;
        }

        public Criteria andBatchUpdatePriceNotLike(String value) {
            addCriterion("batch_update_price not like", value, "batchUpdatePrice");
            return (Criteria) this;
        }

        public Criteria andBatchUpdatePriceIn(List<String> values) {
            addCriterion("batch_update_price in", values, "batchUpdatePrice");
            return (Criteria) this;
        }

        public Criteria andBatchUpdatePriceNotIn(List<String> values) {
            addCriterion("batch_update_price not in", values, "batchUpdatePrice");
            return (Criteria) this;
        }

        public Criteria andBatchUpdatePriceBetween(String value1, String value2) {
            addCriterion("batch_update_price between", value1, value2, "batchUpdatePrice");
            return (Criteria) this;
        }

        public Criteria andBatchUpdatePriceNotBetween(String value1, String value2) {
            addCriterion("batch_update_price not between", value1, value2, "batchUpdatePrice");
            return (Criteria) this;
        }

        public Criteria andSourceIsNull() {
            addCriterion("source is null");
            return (Criteria) this;
        }

        public Criteria andSourceIsNotNull() {
            addCriterion("source is not null");
            return (Criteria) this;
        }

        public Criteria andSourceEqualTo(Integer value) {
            addCriterion("source =", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceNotEqualTo(Integer value) {
            addCriterion("source <>", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceGreaterThan(Integer value) {
            addCriterion("source >", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceGreaterThanOrEqualTo(Integer value) {
            addCriterion("source >=", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceLessThan(Integer value) {
            addCriterion("source <", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceLessThanOrEqualTo(Integer value) {
            addCriterion("source <=", value, "source");
            return (Criteria) this;
        }

        public Criteria andSourceIn(List<Integer> values) {
            addCriterion("source in", values, "source");
            return (Criteria) this;
        }

        public Criteria andSourceNotIn(List<Integer> values) {
            addCriterion("source not in", values, "source");
            return (Criteria) this;
        }

        public Criteria andSourceBetween(Integer value1, Integer value2) {
            addCriterion("source between", value1, value2, "source");
            return (Criteria) this;
        }

        public Criteria andSourceNotBetween(Integer value1, Integer value2) {
            addCriterion("source not between", value1, value2, "source");
            return (Criteria) this;
        }

        public Criteria andMaintainStatusIsNull() {
            addCriterion("maintain_status is null");
            return (Criteria) this;
        }

        public Criteria andMaintainStatusIsNotNull() {
            addCriterion("maintain_status is not null");
            return (Criteria) this;
        }

        public Criteria andMaintainStatusEqualTo(Integer value) {
            addCriterion("maintain_status =", value, "maintainStatus");
            return (Criteria) this;
        }

        public Criteria andMaintainStatusNotEqualTo(Integer value) {
            addCriterion("maintain_status <>", value, "maintainStatus");
            return (Criteria) this;
        }

        public Criteria andMaintainStatusGreaterThan(Integer value) {
            addCriterion("maintain_status >", value, "maintainStatus");
            return (Criteria) this;
        }

        public Criteria andMaintainStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("maintain_status >=", value, "maintainStatus");
            return (Criteria) this;
        }

        public Criteria andMaintainStatusLessThan(Integer value) {
            addCriterion("maintain_status <", value, "maintainStatus");
            return (Criteria) this;
        }

        public Criteria andMaintainStatusLessThanOrEqualTo(Integer value) {
            addCriterion("maintain_status <=", value, "maintainStatus");
            return (Criteria) this;
        }

        public Criteria andMaintainStatusIn(List<Integer> values) {
            addCriterion("maintain_status in", values, "maintainStatus");
            return (Criteria) this;
        }

        public Criteria andMaintainStatusNotIn(List<Integer> values) {
            addCriterion("maintain_status not in", values, "maintainStatus");
            return (Criteria) this;
        }

        public Criteria andMaintainStatusBetween(Integer value1, Integer value2) {
            addCriterion("maintain_status between", value1, value2, "maintainStatus");
            return (Criteria) this;
        }

        public Criteria andMaintainStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("maintain_status not between", value1, value2, "maintainStatus");
            return (Criteria) this;
        }

        public Criteria andExchangeStatusIsNull() {
            addCriterion("exchange_status is null");
            return (Criteria) this;
        }

        public Criteria andExchangeStatusIsNotNull() {
            addCriterion("exchange_status is not null");
            return (Criteria) this;
        }

        public Criteria andExchangeStatusEqualTo(String value) {
            addCriterion("exchange_status =", value, "exchangeStatus");
            return (Criteria) this;
        }

        public Criteria andExchangeStatusNotEqualTo(String value) {
            addCriterion("exchange_status <>", value, "exchangeStatus");
            return (Criteria) this;
        }

        public Criteria andExchangeStatusGreaterThan(String value) {
            addCriterion("exchange_status >", value, "exchangeStatus");
            return (Criteria) this;
        }

        public Criteria andExchangeStatusGreaterThanOrEqualTo(String value) {
            addCriterion("exchange_status >=", value, "exchangeStatus");
            return (Criteria) this;
        }

        public Criteria andExchangeStatusLessThan(String value) {
            addCriterion("exchange_status <", value, "exchangeStatus");
            return (Criteria) this;
        }

        public Criteria andExchangeStatusLessThanOrEqualTo(String value) {
            addCriterion("exchange_status <=", value, "exchangeStatus");
            return (Criteria) this;
        }

        public Criteria andExchangeStatusLike(String value) {
            addCriterion("exchange_status like", value, "exchangeStatus");
            return (Criteria) this;
        }

        public Criteria andExchangeStatusNotLike(String value) {
            addCriterion("exchange_status not like", value, "exchangeStatus");
            return (Criteria) this;
        }

        public Criteria andExchangeStatusIn(List<String> values) {
            addCriterion("exchange_status in", values, "exchangeStatus");
            return (Criteria) this;
        }

        public Criteria andExchangeStatusNotIn(List<String> values) {
            addCriterion("exchange_status not in", values, "exchangeStatus");
            return (Criteria) this;
        }

        public Criteria andExchangeStatusBetween(String value1, String value2) {
            addCriterion("exchange_status between", value1, value2, "exchangeStatus");
            return (Criteria) this;
        }

        public Criteria andExchangeStatusNotBetween(String value1, String value2) {
            addCriterion("exchange_status not between", value1, value2, "exchangeStatus");
            return (Criteria) this;
        }

        public Criteria andUsageSituationIsNull() {
            addCriterion("usage_situation is null");
            return (Criteria) this;
        }

        public Criteria andUsageSituationIsNotNull() {
            addCriterion("usage_situation is not null");
            return (Criteria) this;
        }

        public Criteria andUsageSituationEqualTo(String value) {
            addCriterion("usage_situation =", value, "usageSituation");
            return (Criteria) this;
        }

        public Criteria andUsageSituationNotEqualTo(String value) {
            addCriterion("usage_situation <>", value, "usageSituation");
            return (Criteria) this;
        }

        public Criteria andUsageSituationGreaterThan(String value) {
            addCriterion("usage_situation >", value, "usageSituation");
            return (Criteria) this;
        }

        public Criteria andUsageSituationGreaterThanOrEqualTo(String value) {
            addCriterion("usage_situation >=", value, "usageSituation");
            return (Criteria) this;
        }

        public Criteria andUsageSituationLessThan(String value) {
            addCriterion("usage_situation <", value, "usageSituation");
            return (Criteria) this;
        }

        public Criteria andUsageSituationLessThanOrEqualTo(String value) {
            addCriterion("usage_situation <=", value, "usageSituation");
            return (Criteria) this;
        }

        public Criteria andUsageSituationLike(String value) {
            addCriterion("usage_situation like", value, "usageSituation");
            return (Criteria) this;
        }

        public Criteria andUsageSituationNotLike(String value) {
            addCriterion("usage_situation not like", value, "usageSituation");
            return (Criteria) this;
        }

        public Criteria andUsageSituationIn(List<String> values) {
            addCriterion("usage_situation in", values, "usageSituation");
            return (Criteria) this;
        }

        public Criteria andUsageSituationNotIn(List<String> values) {
            addCriterion("usage_situation not in", values, "usageSituation");
            return (Criteria) this;
        }

        public Criteria andUsageSituationBetween(String value1, String value2) {
            addCriterion("usage_situation between", value1, value2, "usageSituation");
            return (Criteria) this;
        }

        public Criteria andUsageSituationNotBetween(String value1, String value2) {
            addCriterion("usage_situation not between", value1, value2, "usageSituation");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {
        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}